package com.czmh.etc.onlinepubsys.model;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * OBU设备表 EtcObu
 *
 * @author yxyt_自动生成
 * @email
 * @date 2020-09-09 16:56:48
 */
@Data
@ApiModel(value = "EtcObuDTO", description = "订单信息")
public class EtcObuDTO implements Serializable {

    private static final long serialVersionUID = 1L;


    /**
     * 主键ID
     **/
    @ApiModelProperty(value = "主键ID")
    private String id;

    /**
     * 合同序列号（即OBU卡号）
     **/
    @ApiModelProperty(value = "合同序列号（即OBU卡号）")
    private String obuId;

    /**
     * 订单编号
     **/
    @ApiModelProperty(value = "订单编号")
    private String orderNo;

    /**
     * 申办手机号
     **/
    @ApiModelProperty(value = "申办手机号")
    private String phone;

    /**
     * 申办手机号
     **/
    @ApiModelProperty(value = "申请人姓名")
    private String username;

    /**
     * 性别
     **/
    @ApiModelProperty(value = "性别")
    private Integer userSex;

    /**
     * 地址
     **/
    @ApiModelProperty(value = "地址")
    private String address;

    /**
     * 证件类型
     **/
    @ApiModelProperty(value = "证件类型")
    private Integer certifiType;

    /**
     * 证件号码
     **/
    @ApiModelProperty(value = "证件号码")
    private String certifiNo;

    /**
     * 车牌号码
     **/
    @ApiModelProperty(value = "车牌号码")
    private String vehiclePlate;

    /**
     * 车辆品牌
     **/
    @ApiModelProperty(value = "车辆品牌")
    private String vehicleModel;

    /**
     * 车辆归属
     **/
    @ApiModelProperty(value = "车辆归属")
    private Integer ownerType;


    /**
     * 单位名称
     **/
    @ApiModelProperty(value = "单位名称")
    private String enterpriseName;

    /**
     * 营业执照号码
     **/
    @ApiModelProperty(value = "营业执照号码")
    private String enterpriseNo;

    /**
     * 付款金额
     **/
    @ApiModelProperty(value = "付款金额")
    private BigDecimal amount;

    /**
     * 付款金额
     **/
    @ApiModelProperty(value = "付款方式")
    private Integer payType;

    /**
     * 兑换码
     **/
    @ApiModelProperty(value = "兑换码")
    private String payNo;

    /**
     * 签约银行
     **/
    @ApiModelProperty(value = "签约银行")
    private String bankSn;


    /**
     * OBU设备品牌
     **/
    @ApiModelProperty(value = "供应商")
    private String obuBrand;


    /**
     * ETC卡号
     **/
    @ApiModelProperty(value = "ETC卡号")
    private String etcCardNo;


    /**
     * 车辆归属：0个人用户，1单位用户
     **/
    @ApiModelProperty(value = "车辆归属：0个人用户，1单位用户")
    private Integer userType;

    /**
     * OBU激活状态：0未激活，1已激活
     **/
    @ApiModelProperty(value = "OBU激活状态：0未激活，1已激活")
    private Integer activateStatus;

    /**
     * 创建时间
     **/
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "创建时间")
    private Date createDate;


    /**
     * 省
     **/
    @ApiModelProperty(value = "省")
    private String province;

    /**
     * 市
     **/
    @ApiModelProperty(value = "市")
    private String city;

    /**
     * 区
     **/
    @ApiModelProperty(value = "区")
    private String area;

    /**
     * 激活位置的详细地址信息
     **/
    @ApiModelProperty(value = "激活位置的详细地址信息")
    private String activateAddr;

    /**
     * 创建时间
     **/
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "创建时间")
    private Date createTime;

    /**
     * 激活时间
     **/
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "激活时间")
    private Date activateTime;

    /**
     * 状态 0-已付款 1-已注册 2-设备已激活
     **/
    @ApiModelProperty(value = "状态 0-已付款 1-已注册 2-设备已激活")
    private Integer state;

    /**
     * 银行短信签约时间
     **/
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "银行短信签约时间")
    private Date bankSignTime;

    /**
     * 银行卡号
     **/
    @ApiModelProperty(value = "银行卡号")
    private String bankCardNo;

    /**
     * 支付状态 0-未支付 1-已支付
     **/
    @ApiModelProperty(value = "支付状态 0-未支付 1-已支付")
    private Integer payState;

    /** ETC发行方 **/
    @ApiModelProperty(value = "ETC发行方")
    private String issuerName;

}